"""
类属性：
    被该类的所有对象所共用
    类属性，可以使用类名、实例对象来访问
    类属性，只能通过类名来修改 -- 如果通过实例化对象修改，则表示创建一个实例属性

优点：
    实例属性 -- 每个对象单独开辟空间
    类属性 -- 全部对象共用一个空间 -- 节省内存
"""

class Dog(object):
    # 设置类属性
    tooth = 10

# 创建实例化对象
dog1 = Dog()
dog2 = Dog()

# 访问类属性 -- 类名、对象均可
print(Dog.tooth)
print(dog1.tooth)
print(dog2.tooth)
print('===========')

# 修改类属性
Dog.tooth = 12
print(Dog.tooth)
print(dog1.tooth)
print(dog2.tooth)
print('===========')

# 如果通过实例化对象 -- 则不能修改
dog1.tooth = 15
print(Dog.tooth)
print(dog1.tooth)
print(dog2.tooth)
print('===========')
